The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
One approach for 3D display is to display a multiplicity of image views in spatially shifted positions, so that the user's left and right eyes see different views, giving an impression of depth by stereoscopy.
FIG. 1 is a schematic illustration of the stereoscopic effect on a 3D display. A viewer 10 watches a 3D display 11. The 3D display has vertical elements 12 enabling displaying different columns of different image views. In the illustration of FIG. 1, the vertical element can display five columns of five respective image views at different angles namely a central view C 13, an extreme left view L1 14, a near left view L2 15, an extreme right view R1 16, and a near right view R2 17. Thus, depending on its position with respect to the 3D screen, the viewer can see simultaneously two images respectively with each eye, giving him/her an impressing of depth.
In some applications, a 3D format for an image is a format combining texture information and depth information. That format provides a 2D view of the scene represented by the image (texture/colour information) and a depth map that is used by the display device for computing lateral views (e.g. extreme/near left, extreme/near right).
Representations of the texture and depth information are referred to as maps. The texture map is a bitmap giving colours for all of its pixels, while the depth map gives their depth information. The texture map can be used directly for the central view. Both the texture map and the depth map are needed for computing the side views.
For obtaining a side view having an angle α (alpha) with the central view, each pixel of the central view may be horizontally shifted by an amount called “disparity”. Said amount (disparity) may typically be computed through a linear function of the depth of the pixel and the angle alpha of view.
The operation associating the texture of a pixel to a corresponding pixel in a view is called projection.
In a first approach, referred to as “forward processing”, one starts from a pixel in the input image to generate the corresponding projected pixel in a view. In a second approach, referred to as “backward processing”, one starts from a pixel of a view to be generated (e.g. a left view) and finds the corresponding pixel (that is to be used in the view) in the input image.
In the forward processing approach, computation of view's pixel values following input pixel and depth values is not accurate. Pixels are only projected at an integer position as depth values are integer.
In the forward processing approach, pixels positions in the view may never be assigned, leaving a “hole” (“de-occlusion”), or they may be assigned several times (“occlusion”).
Post processing is needed to handle the occlusion and/or de-occlusion. For this purpose, after the projection, all positions in a view must be examined. Holes are typically filled by relevant information, while multiple assignments are typically solved by keeping only the assignments corresponding to the most foreground pixels occluding the background. This leads to a rather complex processing.
Typically, the handling of occlusions and/or de-occlusions is complex and may also induce approximation artefacts.
In the backward approach, the depth of the pixel in the input image that will be projected onto a pixel in the image view is not known. An approximation is typically used. This approximation may lead to artefacts.
One advantage of the backward approach is that all pixels in the views are visited by construction so that no holes are left. Thus, post processing due to de-occlusion is not needed.